Unity 2019.2 Beta版发布
Unity 2019.2 Beta版现已发布,该版本集成了流行的Polybrush工具,加入把开发者的游戏和应用提供给全球范围用户的Unity Distribution Platform分发平台,以及改进和扩展了移动、光照、2D和XR等方面的功能。
请访问Unity Hub的Installs > Beta Releases下载Unity 2019.2 Beta。
下载Unity 2019.2 Beta:
https://unity3d.com/unity/beta/2019.2
移动功能改进
适用于Android系统的Optimized Frame Pacing优化帧数调步选项是Unity和Google的Android Gaming团队及Graphics团队合作开发的功能,该选项通过使帧数以较少变化进行分配,提供稳定的帧率,从而实现更流畅的游戏体验。
不支持Metal技术的低端iOS设备约占运行Unity游戏的iOS设备的25%,我们增加了适用于iOS系统的OpenGL多线程支持,在不支持Metal技术的低端iOS设备上,可以提高项目的性能。
针对iOS系统和Android系统,我们为SRP Batcher添加了OpenGL支持,以提升轻量级渲染管线LWRP项目的CPU性能。
我们通过新的Screen.brightness属性加入了屏幕亮度的控制功能,它适用于iOS系统和Android系统;我们也改进了iOS系统的ReplayKit API 。为了让开发者轻松调整UI,我们通过新的Screen.cutouts属性,在Android系统加入了检测槽口或摄像机孔周围边框的支持。
我们也增加了使用Android App Bundle的APK文件大小检查功能,以便了解不同构建目标的最终应用大小。
下面的代码展示了如何实现Screen.cutouts函数,可视化项目中的安全区域和裁剪信息。
var res = Screen.currentResolution;
var safeArea = Screen.safeArea;
var cutouts = Screen.cutouts;
StringBuilder safeAreaInfo = new StringBuilder($"Resolution (Width × Height): {res.width}x{res.height}\n");
safeAreaInfo.Append($"safeArea (X x Y / Width × Height):\n");
safeAreaInfo.Append($"{safeArea.x} x {safeArea.y} / {safeArea.width} x {safeArea.height} \n");
if (cutouts.Length > 0)
{
foreach (var c in cutouts)
{
GUIDrawRect(c, Color.green, "");
safeAreaInfo.Append($"cutout (X x Y / Width × Height):\n");
safeAreaInfo.Append($"{c.x} x {c.y} / {c.width} x {c.height}\n");
}
}
Else
safeAreaInfo.Append("No cutouts detected");
GUIDrawRect(safeArea, Color.red, safeAreaInfo.ToString());
下图展示了Screen.cutouts属性如何检测三星S10e手机的安全区域和裁剪部分。
下图展示Android App Bundle帮助开发者针对大型应用估算不同构建目标的最终APK文件大小。
Polybrush(预览版)
开发者现在可以直接在编辑器中,使用任意3D模型雕刻复杂的形状、定位细节网格、混合网格间的纹理以及绘制自定义光照或着色。
Polybrush 1.0.0现在可通过资源包管理器获取,该版本包含Mesh和Prefab散布模式。
LWRP和Shader Graph中的2D新功能
Unity 2019.2 Beta版发布后,轻量级渲染管线LWRP将更新实验性2D Renderer渲染器,它包含2D Pixel Perfect和新的2D Lights。
Shader Graph着色器视图现在拥有2D Masternodes,可用于创建2D Unlit和Lit精灵着色器。
光照功能更新
光照贴图降噪功能现在适用于所有编辑器平台,以及各种平台不同品牌的GPU。我们对配置烘焙过程的方法做了基础性改动,无论是借助光照探针还是光照贴图,任何对象都可以影响全局光照的烘焙。这为光照探针工作流程开启了新的可能性。
Unity 2019.2 Beta版包含主要的速度提升效果,特别是对于使用GPU光照贴图的光照迭代过程。
光照贴图支持Intel Open Image Denoise
Open Image Denoise图像降噪库是由英特尔开发的新跨平台库,它也是基于AI的降噪过滤器。在Unity中,它通过对光照贴图进行后期处理来改进光照贴图工作流程和质量,从而得到使用更少采样的平滑无噪声光照贴图。
探针照亮的GI影响源
我们修改了使用Lightmap Static的对象术语,这种情况称为Contribute GI。开发者可以选择Contribute GI的对象是否从光照探针或光照贴图接收全局光照。
网格渲染器和蒙皮网格渲染器上添加了新的下拉菜单,地形功能会让开发者选择对象是从光照贴图还是从光照探针获取全局光照。
如下图所示,新选项会让开发者设置影响全局光照的探针照亮对象。
GPU光照贴图改进
GPU光照贴图目前尚是预览版本,我们对其进行了重要更新,加入了CPU光照贴图的对应功能。
GPU光照贴图现在拥有:
针对环境光照的多重重要性采样支持。
支持NVIDIA OptiX降噪技术。
在使用视图优先级或低占用光照贴图时,提高采样过程的性能。
升级用于光照贴图的NVIDIA OptiX AI Denoiser
通过NVIDIA OptiX AI Denoiser的升级,可以获得更好的性能和使用更低的内存,并添加了NVIDIA图灵架构GPU的支持。
如下图所示,升级后的NVIDIA OptiX AI Denoiser提供了更平滑的光照贴图。
全新的云诊断用户报告SDK
用户现在可以在Windows和UWP平台上运行游戏和应用的同时,异步获取屏幕截图和记录Bug报告,从而显著降低性能影响。启用该功能,请在UserReporting游戏对象上把UserReportingPlatform切换为Async。
了解云诊断用户报告SDK,请访问:
https://unitytech.github.io/clouddiagnostics/userreporting/UnityCloudDiagnosticsUserReports.html
如下图所示,用户报告功能通过新的SDK提供了快速屏幕截图功能。
TypeCache API
TypeCache提供了一种快捷方法访问特定属性标记的类型或方法,以及从特定类或接口派生的类型。它利用内部本地缓存,该缓存为了编辑器加载的所有程序集而构建,开发者可以通过新的UnityEditor.TypeCache C# API访问该功能。
using UnityEditor;
using System;
using System.Collections.Generic;
using System.Linq;
public class VolumeComponent {}
public class Example
{
static List<Type> s_VolumeComponents;
static Example()
{
s_VolumeComponents = TypeCache.GetTypesDerivedFrom<VolumeComponent>().ToList();
}
}
在全球市场获取新用户
Unity Distribution Portal分发平台,简称UDP分发平台,通过分发移动游戏和应用到全世界本地市场的应用商店,帮助开发者扩展业务及扩大用户群。
UDP分发平台会自动为加入的应用商店创建构建版本,无论不同应用商店有什么要求,通过它都可以进行分发。
UDP分发平台目前处于预览阶段,它支持发布到面向全球的Catappult/Aptoide商店和东南亚的MOO Store商店,不久后它会支持韩国的ONE Store商店和印度的Jio Games Store商店,未来将支持更多应用商店。
欢迎开始使用Unity Distribution Portal分发平台:
https://distribute.dashboard.unity.com/homepage
AR Foundation
Unity 2019.2 Beta中,AR Foundation包含:面部追踪、2D图像追踪、3D对象追踪和环境探针。
Face-Tracking面部追踪:开发者可以访问面部标记,检测表面的网格形式和混合形状信息,这些信息可以提供给面部动画绑定。Face Manager会为面部追踪配置设备,并为每个检测表面创建游戏对象。该功能适用于ARKit和ARCore。
2D Image-Tracking图像跟踪:该功能可以检测环境内的特定2D图像。Tracked Image Manager会自动创建表示所有识别图像的游戏对象。开发者可以基于特定图像的存在情况改变AR体验。该功能适用于ARKit和ARCore。
3D Object-Tracking对象追踪:开发者将现实物体作为数字形式导入Unity体验中,并在环境中检测这些物体。Tracked Object Manager会为每个检测到的现实物体创建相应的游戏对象,从而让体验根据特定现实物体的存在情况而发生变化。除了游戏外,该功能也有助于开发教学和培训的体验。该功能适用于ARKit。
Environment Probes环境探针:该功能会检测环境特定区域的光照和颜色信息,有助于让3D内容无缝融合到周围环境之中。Environment Probe Manager会使用这些信息,在Unity中自动创建立方体贴图。该功能适用于ARKit。
HDRP for VR(预览版)
高清晰渲染管线HDRP是一种预制的高保真度可编程渲染管线,用于运行在兼容计算着色器平台的项目。根据设计,HDRP提供了开发高分辨率游戏和技术演示等内容的工具。
在新版本中,HDRP包含对VR项目的支持,这项支持目前仅限于Windows 10和Direct3D11设备,必须在HDRP中为VR使用单通道立体渲染。
了解完整的限制情况:
https://github.com/Unity-Technologies/ScriptableRenderPipeline/wiki/VR-in-HDRP
通过资源包管理器获取编辑器功能
在Unity 2019.2 Beta版中,一些功能将以资源包的形式提供,这可以让编辑器更加简洁和模块化。
例如:Unity Ads,2D Sprite Editor精灵编辑器和2D Tilemap Editor编辑器现在可以通过资源包管理器轻松地集成,升级和移除。
参与Unity Beta Program,赢取奖品
如果你希望提供给我们关于Unity新版本的重要反馈,帮助我们在正式发布前改进和完善新版本,你可以参与Unity Beta Program:
https://unity3d.com/unity/beta
了解如何成为一名合格的Unity Beta版测试人员,请阅读《Unity测试人员指南》:
https://forum.unity.com/threads/a-guide-to-being-an-effective-beta-tester.402777/
为了表示我们的感谢,5位幸运的Unity Beta版测试人员将赢得三星Galaxy S10+手机。
为了获得抽奖资格,你必须在Unity 2019.2 Beta版周期找到和汇报至少一个Bug,并在报告描述中添加 #Unity2019Beta标签。我们会在Unity 2019.2正式版发布文章和Unity Beta论坛中宣布获奖者。
感谢三星对于Unity Beta Program的支持,我们和三星合作开发了全新的Adaptive Performance自适应性能功能(预览版),三星Galaxy S10是首批支持该功能的设备之一,感兴趣的开发者不妨一试。
小结
Unity 2019.2 Beta版的主要新功能与更新为大家介绍到这里,你可以从Unity Hub或Beta版页面下载Unity 2019.2 Beta版本,尝试使用所有新功能。
请访问Unity 2019.2 Beta发布说明页面,了解完整的新功能,改进和修复:
https://unity3d.com/unity/beta/2019.2#release-notes
更多Unity新功能介绍,尽在Unity Connect平台(Connect.unity.com)。下载Unity Connect APP,请点击此处。
推荐阅读
Adaptive Performance:高品质画面呈现与流畅稳定帧率的二者兼得
2D Pixel Perfect:使用Unity创建任天堂红白机风格复古游戏
官方活动
Unity将举行六一儿童节特别活动-动画工作坊,我们将带领孩子们进入动画制作的世界。欢迎小朋友们报名参加,家长可陪同参与。
活动时间:5月25日 10:00-16:00 (星期六)
报名链接:
https://connect.unity.com/events/animationworkshop
点击“阅读原文”下载Unity 2019.2 Beta
↓↓↓